---
title: Mise à jour d'Astro
description: Apprenez à mettre à jour Astro
i18nReady: true
---
import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro';
import Version from '~/components/Version.astro';


Ce guide explique comment mettre à jour votre version d'Astro et les dépendances associées, comment savoir ce qui a changé d'une version à l'autre, et comment comprendre le système de versions d'Astro et les mises à jour correspondantes de la documentation.

## Qu'est-ce qui a changé ?
La dernière version d'Astro est <Version pkgName="astro" />.

Vous pouvez trouver une liste exhaustive de tous les changements dans [le changelog d'Astro](https://github.com/withastro/astro/blob/main/packages/astro/CHANGELOG.md), et des instructions importantes pour la mise à niveau vers chaque nouvelle [version majeure](#changements-majeurs) dans nos [guides de mise à niveau](#guides-de-mise-à-niveau).


## Mise à jour vers la dernière version

Mettez à jour la version d'Astro et de toutes les intégrations officielles de votre projet avec les dernières versions en une seule commande à l'aide de votre gestionnaire de paquets :

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  # Mettre à jour Astro et les intégrations officielles en même temps
  npx @astrojs/upgrade
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  # Mettre à jour Astro et les intégrations officielles en même temps
  pnpm dlx @astrojs/upgrade
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  # Mettre à jour Astro et les intégrations officielles en même temps
  yarn dlx @astrojs/upgrade
  ```
  </Fragment>
</PackageManagerTabs>


### Mise à jour manuelle

Pour mettre à jour manuellement Astro et les intégrations vers leurs versions actuelles, utilisez la commande appropriée pour votre gestionnaire de paquets.

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  # Exemple : mise à niveau d'Astro avec des intégrations React et Tailwind
  npm install astro@latest @astrojs/react@latest @astrojs/tailwind@latest
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  # Exemple : mise à niveau d'Astro avec des intégrations React et Tailwind
  pnpm add astro@latest @astrojs/react@latest @astrojs/tailwind@latest
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  # Exemple : mise à niveau d'Astro avec des intégrations React et Tailwind
  yarn add astro@latest @astrojs/react@latest @astrojs/tailwind@latest
  ```
  </Fragment>
</PackageManagerTabs>

### Installer un numéro de version spécifique

Pour installer une [version d'Astro](https://www.npmjs.com/package/astro?activeTab=versions) ou des intégrations spécifiques, utilisez la commande appropriée de votre gestionnaire de paquets.

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  npm install astro@4.5.3 @astrojs/react@3.0.10
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  pnpm add astro@4.5.3 @astrojs/react@3.0.10
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  yarn add astro@4.5.3 @astrojs/react@3.0.10
  ```
  </Fragment>
</PackageManagerTabs>


## Mise à jour de la documentation

Cette documentation est mise à jour à chaque [version mineure](#changements-mineurs) et [version majeure](#changements-majeurs). Lorsque de nouvelles fonctionnalités sont ajoutées, ou que l'utilisation existante change, la documentation sera mise à jour pour refléter le **comportement actuel d'Astro**. Si votre projet n'est pas mis à jour, vous pouvez remarquer que certains comportements ne correspondent pas à la documentation mise à jour.

Les nouvelles fonctionnalités sont ajoutées aux documents avec le numéro de version spécifique dans lequel elles ont été ajoutées. Cela signifie que si vous n'avez pas mis à jour la dernière version d'Astro, certaines fonctionnalités documentées peuvent être indisponibles. Vérifiez toujours le numéro de version `Ajouté à la version :` et assurez-vous que votre projet est mis à jour avant d'essayer d'utiliser les nouvelles fonctionnalités !

Si vous n'avez pas effectué la mise à jour vers la dernière version majeure d'Astro, vous risquez de rencontrer des différences significatives entre la documentation Astro et le comportement de votre projet. Nous vous recommandons vivement d'effectuer la mise à jour vers la version majeure actuelle d'Astro dès que vous en avez la possibilité. Le code et la documentation des versions antérieures ne sont pas pris en charge.

### Guides de mise à niveau

Après chaque [version majeure](#changements-majeurs), vous trouverez un **guide de mise à niveau** contenant des informations sur les changements importants et des instructions pour mettre à jour le code de votre projet.

Les pages principales de la documentation d'Astro **correspondent toujours à la dernière version d'Astro**. Elles ne décrivent pas ou ne comparent pas la façon dont les choses fonctionnaient dans les versions précédentes, et ne mettent pas en évidence les mises à jour ou les changements de comportement.

Consultez les guides de mise à jour ci-dessous pour une explication des changements, en comparant la nouvelle version à l'ancienne. Les guides de mise à jour incluent tout ce qui pourrait vous obliger à modifier votre propre code : les changements importants, les dépréciations, les suppressions et remplacements de fonctionnalités ainsi que les conseils d'utilisation mis à jour. Chaque modification apportée à Astro comprend une section "Que dois-je faire ?" pour vous aider à mettre à jour avec succès le code de votre projet.

- [Mise à jour vers la v4](/fr/guides/upgrade-to/v4/)
- [Mise à jour vers la v3](/fr/guides/upgrade-to/v3/)
- [Mise à jour vers la v2](/fr/guides/upgrade-to/v2/)
- [Mise à jour vers la v1](/fr/guides/upgrade-to/v1/)

### Anciennes documentations (non maintenues)

La documentation pour les anciennes versions d'Astro n'est pas maintenue, mais est disponible sous forme de snapshot statique. Utilisez ces versions de la documentation si vous n'êtes pas en mesure de mettre à jour votre projet, mais que vous souhaitez tout de même consulter des guides et des références :

- [snapshot v3.6.3 non maintenu](https://docs-git-v3-docs-unmaintained-astrodotbuild.vercel.app/)
- [snapshot v2.10.15 non maintenu](https://deploy-preview-4405--astro-docs-2.netlify.app/en/getting-started/)


## Versionnement sémantique

Astro tente d'adhérer autant que possible au [semantic versioning](https://semver.org/), qui est un ensemble de règles que les développeurs utilisent pour déterminer comment attribuer un numéro de version à une version. La version sémantique suit un modèle prévisible pour informer les utilisateurs du type de changements auxquels ils peuvent s'attendre d'une version à l'autre.

Le versionnage sémantique impose un modèle de `X.Y.Z` pour les numéros de version des logiciels. Ces valeurs représentent les mises à jour **majeures (X)**, **mineures (Y)** et **correctifs (Z)**.

### Changements au niveau des correctifs

Les changements de correctifs sont les changements les moins perturbateurs. Ils ne modifient pas la façon dont vous utilisez Astro, et aucune modification de votre propre code n'est nécessaire lors de la mise à jour.

Lorsque Astro publie une version de correction, le dernier numéro augmente. (par exemple, `astro@4.3.14` -> `astro@4.3.15`)

Des correctifs peuvent être publiés pour des raisons telles que

- Changements internes qui ne modifient pas la fonctionnalité d'Astro :
  - remaniements
  - amélioration des performances
  - augmentation ou modification de la couverture des tests
  - s'aligner sur la documentation et le comportement attendus
- Amélioration de la journalisation et des messages d'erreur.
- Reprise des versions après un échec.

Les modifications apportées aux correctifs comprennent également **la plupart des corrections de bogues**, même dans les cas où les utilisateurs tiraient parti d'un comportement existant non intentionnel ou indésirable.


### Changements mineurs

Les versions mineures introduisent principalement de nouvelles fonctionnalités et améliorations que vous souhaiterez peut-être essayer, mais qui ne nécessitent aucune modification de votre code. Certaines fonctionnalités existantes peuvent également être **dépréciées** (marquées pour être supprimées dans une version future tout en continuant à fonctionner) dans une version mineure, ce qui vous donne l'occasion de vous préparer à leur suppression éventuelle.

Les versions mineures comprennent des changements tels que :

- **Dépréciation** de fonctionnalités/options existantes avec un avertissement qu'elles seront supprimées dans une prochaine version majeure.
- Introduction de nouvelles fonctionnalités.
- Introduction de nouvelles options dans les fonctions d'intégration.
- Introduction de nouvelles fonctionnalités dans `astro/app`, notamment utilisées pour créer de nouveaux adaptateurs.

Une version mineure peut également inclure des modifications de correctifs plus petites en même temps.

### Changements majeurs

Les versions majeures incluront des changements importants au moins dans une partie du code existant. Ces changements sont toujours documentées dans un guide ["Mise à niveau vers vX"](#guides-de-mise-à-niveau) dans Astro.

Les versions majeures permettent à Astro d'apporter des modifications significatives non seulement à la logique interne, mais aussi au comportement et à l'utilisation prévus. La documentation sera mise à jour pour refléter la dernière version seulement, et **des instantanés statiques et non maintenus des anciennes documentations** sont disponibles en tant qu'enregistrement historique pour les anciens projets qui n'ont pas encore été mis à jour.

Les versions majeures comprennent des changements tels que

- Suppression de fonctionnalités précédemment obsolètes.
- Modifications des fonctionnalités existantes.
- Modification des options existantes dans les fonctions d'intégration.
- Modification des options et fonctionnalités existantes dans `astro/app`, notamment utilisé pour créer de nouveaux adaptateurs.

Une version majeure peut également inclure des changements et des améliorations qui ne constituent pas un changement important et qui seraient normalement publiés séparément dans une version mineure ou un correctif.

### Exceptions

- **Fonctionnalités expérimentales**. La publication de versions d'Astro sans adhérer au versionnage sémantique permet aux développeurs d'Astro la plus grande flexibilité pour explorer, et même changer radicalement de cap, pendant le développement de fonctionnalités expérimentales. Par conséquent, le comportement de ces fonctionnalités peut être altéré par des modifications mineures ou des correctifs.

Ces fonctionnalités sont généralement accompagnées d'un [Request for Consideration (RFC) stage 3](https://github.com/withastro/roadmap#stage-3-rfc--development). On s'attend à ce que les utilisateurs de la version bêta suivent les mises à jour et fassent part de leurs commentaires sur la discussion afin d'aider à orienter le développement de ces fonctionnalités.

Une fois que ces fonctionnalités seront sorties de leur période expérimentale, elles suivront le contrat normal de versionnement sémantique.

- **Améliorations de la documentation** (par exemple, les références et les messages d'erreur). Ils sont construits à partir des sources du dépôt `docs`. Cela permet à Astro de mettre à jour rapidement les corrections et améliorations de docs dans les cas où le contenu source de la documentation est stocké dans le référentiel principal `astro`.

### Politiques de support et de mise à jour de Node.js

#### Support

- Astro prend en charge la [**dernière version _Maintenance_ LTS** de Node.js](https://nodejs.org/en/about/previous-releases#release-schedule).
- Astro supporte la [version **actuelle _Active_ LTS** de Node.js](https://nodejs.org/en/about/previous-releases#release-schedule).
- Astro peut supporter des versions impaires de Node.js.

#### Mise à niveau

Les règles suivantes définissent quand Astro peut déprécier, abandonner ou ajouter la prise en charge de versions de Node.js :

- Les versions impaires de Node.js peuvent être dépréciées et/ou abandonnées lors de la publication de la prochaine version paire de Node.js. Ce changement peut se produire dans une version **mineure** d'Astro, après une période raisonnable de support étendu tel que décidé par l'équipe Astro Core.
- La mise à jour de la version minimale **_Maintenance_ LTS** (dans la même gamme majeure, par exemple de `v18.14.*` à `v18.20.*`) de Node.js peut se produire dans une version **mineure** d'Astro.
- Exception de sécurité : Si une faille de sécurité dans Node.js qui **affecte Astro** est divulguée et corrigée, l'équipe Core peut augmenter la version minimale de **_Maintenance_ LTS** dans une version **correctif**.
- La mise à jour des versions mineures ou majeures de Node.js (**non** Maintenance LTS) ne se fait que dans les versions majeures d'Astro.
- Exception de sécurité : Si une faille de sécurité dans Node.js qui **affecte Astro** est divulguée et corrigée, l'équipe Core peut mettre à jour la version minimale dans une version **mineure**.

### Maintenance prolongée

L'équipe Core fournira une maintenance étendue **pour les correctifs de sécurité uniquement** pour une version majeure précédente. Cela signifie que si la version majeure actuelle est la `v4.*`, l'équipe Core va porter les correctifs de sécurité et publier une nouvelle version `v3.*`. 
